Алгоритмы и структуры данных
Algoritmid ja andmestruktuurid для IASB ведет Виктор Леппиксон.
Его минусы:
- Практические уроки отсутсвуют. Всё в руках студента - сам пусть учит.
- Безразличие до проблем студентов, в частности если на экзамен все места зарегистрированы.
Немного внешнего материала..
- Карточка предмета IAG0090
- Материалы от преподавателя
- Материалы от Allik
- Материалы от Серёги Шенберга
Экзамен. Теория
- Что такое сериализация, где необходимо её использовать.
- Сложность некоего алгоритма была оценена как функция T(n), что она собой значит?
- (тут график нужен) Есть многоуровневая структура быстрого поиска (Мои пояснения.. Например нижняя цепочка проходит через все элементы 5-6-7-10-13-15, а верхняя только 5-7-13). Как быть если необходимо добавить новый элемент в эту структуру?
- Как освобождается память, отведённая под двоичное дерево.
- Постройте "2-3-4" дерево из элементов, которые поступили в порядке.. 200 100 120 80 10 30 210 220 230 140 130 150
- Oletame, et kettal paikneva andmestruktuuri realiseerimiseks B-puu, kuidas te valiksite puude jargu?
- Нарисуйте 3-х дерево из слов: liiga liider liiklus liialdus liikluvus liim liimipulk
- Lineaarne proovimise meetod (paiskpaigutus)
- Nullmeetodil sortimise algoritm
- В оперативной памяти находится две фотографии, на которой под один пиксель отведён 1 байт. Оба файла одинакового размера. На одной горы (?), на другой - карнавал в Рио-де-Жанейро. Оба файла сжимаются кодированием Хаффмана. Какая займёт меньше памяти, почему.
Экзамен. Практика
Есть такие структуры..
struct Student {char *pName,*pCode; char **pSubjects;}; struct Subject {char *pName,*pCode, *pTeacher; double nPoints; struct Subject *pNext;}
Из них составляется два массива всех студентов и всех предметов.. Известны
*pSubjectList, *pStudentList.
Необходимо написать функцию с прототипом
int NewSubject (struct Student **pStudentList, struct Subject *pSubjectList, char *pStudentCode, char *pSubjectCode)
Причём работает она таким образом..
Для получения ссылки на нужного студента - есть функция, возвращающая значение индекса в массиве студентов с прототипом
int HashFun (char*)
Таким образом NewSubject() должна проверить сначала есть ли такой студент, потом - есть ли такой предмет, потом надо хитро посмотреть сколько у данного студента есть занятых мест в Student.pSubjects, куда помещается максимум 5 мест. Так вот надо найти свободное место, выделить под него память и скопировать в него код предмета (pSubjectCode). В случае если какой-то шаг не удался - функция возвращает ноль.